
package com.gamesearch;
import java.util.*;

/** @pdOid 25886175-473f-4f93-9e70-73f98817600f */
public class Jeu {
   /** @pdOid 974e818c-53f9-4f0e-b125-c9c175ff9b80 */
   public int idJeu;
   /** @pdOid b75b5dab-1f2f-4173-9823-948e9bd96b95 */
   public java.lang.String nomJeu;
   /** @pdOid 4acbe9d9-f2fe-4ae1-baef-2c151439d3c7 */
   public java.util.Date dateDeSortie;
   /** @pdOid 595117db-a665-4302-aac8-82ba8b047b73 */
   public java.lang.String descriptif;
   /** @pdOid 5767685d-1626-4e4b-9593-5888e1b6f37c */
   public java.lang.String image;
   
   /** @pdRoleInfo migr=no name=Editeur assc=edite coll=java.util.Collection impl=java.util.HashSet mult=0..* */
   public java.util.Collection<Editeur> Edite;
   /** @pdRoleInfo migr=no name=Genre assc=classe coll=java.util.Collection impl=java.util.HashSet mult=0..* */
   public java.util.Collection<Genre> Classe;
   /** @pdRoleInfo migr=no name=Norme assc=censure mult=1..1 side=A */
   public Norme norme;
   
   
   /** @pdGenerated default getter */
   public java.util.Collection<Editeur> getEdite() {
      if (Edite == null)
         Edite = new java.util.HashSet<Editeur>();
      return Edite;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorEdite() {
      if (Edite == null)
         Edite = new java.util.HashSet<Editeur>();
      return Edite.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newEdite */
   public void setEdite(java.util.Collection<Editeur> newEdite) {
      removeAllEdite();
      for (java.util.Iterator iter = newEdite.iterator(); iter.hasNext();)
         addEdite((Editeur)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newEditeur */
   public void addEdite(Editeur newEditeur) {
      if (newEditeur == null)
         return;
      if (this.Edite == null)
         this.Edite = new java.util.HashSet<Editeur>();
      if (!this.Edite.contains(newEditeur))
      {
         this.Edite.add(newEditeur);
         newEditeur.addEdite(this);      
      }
   }
   
   /** @pdGenerated default remove
     * @param oldEditeur */
   public void removeEdite(Editeur oldEditeur) {
      if (oldEditeur == null)
         return;
      if (this.Edite != null)
         if (this.Edite.contains(oldEditeur))
         {
            this.Edite.remove(oldEditeur);
            oldEditeur.removeEdite(this);
         }
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllEdite() {
      if (Edite != null)
      {
         Editeur oldEditeur;
         for (java.util.Iterator iter = getIteratorEdite(); iter.hasNext();)
         {
            oldEditeur = (Editeur)iter.next();
            iter.remove();
            oldEditeur.removeEdite(this);
         }
      }
   }
   /** @pdGenerated default getter */
   public java.util.Collection<Genre> getClasse() {
      if (Classe == null)
         Classe = new java.util.HashSet<Genre>();
      return Classe;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorClasse() {
      if (Classe == null)
         Classe = new java.util.HashSet<Genre>();
      return Classe.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newClasse */
   public void setClasse(java.util.Collection<Genre> newClasse) {
      removeAllClasse();
      for (java.util.Iterator iter = newClasse.iterator(); iter.hasNext();)
         addClasse((Genre)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newGenre */
   public void addClasse(Genre newGenre) {
      if (newGenre == null)
         return;
      if (this.Classe == null)
         this.Classe = new java.util.HashSet<Genre>();
      if (!this.Classe.contains(newGenre))
      {
         this.Classe.add(newGenre);
         newGenre.addClasse(this);      
      }
   }
   
   /** @pdGenerated default remove
     * @param oldGenre */
   public void removeClasse(Genre oldGenre) {
      if (oldGenre == null)
         return;
      if (this.Classe != null)
         if (this.Classe.contains(oldGenre))
         {
            this.Classe.remove(oldGenre);
            oldGenre.removeClasse(this);
         }
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllClasse() {
      if (Classe != null)
      {
         Genre oldGenre;
         for (java.util.Iterator iter = getIteratorClasse(); iter.hasNext();)
         {
            oldGenre = (Genre)iter.next();
            iter.remove();
            oldGenre.removeClasse(this);
         }
      }
   }
   /** @pdGenerated default parent getter */
   public Norme getNorme() {
      return norme;
   }
   
   /** @pdGenerated default parent setter
     * @param newNorme */
   public void setNorme(Norme newNorme) {
      if (this.norme == null || !this.norme.equals(newNorme))
      {
         if (this.norme != null)
         {
            Norme oldNorme = this.norme;
            this.norme = null;
            oldNorme.removeJeu(this);
         }
         if (newNorme != null)
         {
            this.norme = newNorme;
            this.norme.addJeu(this);
         }
      }
   }

}